package com.ruoyi.webshop.mapper;

import java.util.List;
import com.ruoyi.webshop.domain.AdvertType;
import com.ruoyi.webshop.domain.AdvertPosition;

/**
 * 广告信息类型Mapper接口
 * 
 * @author ruoyi
 * @date 2024-03-18
 */
public interface AdvertTypeMapper 
{
    /**
     * 查询广告信息类型
     * 
     * @param advertTypeId 广告信息类型主键
     * @return 广告信息类型
     */
    public AdvertType selectAdvertTypeByAdvertTypeId(Long advertTypeId);

    /**
     * 查询广告信息类型列表
     * 
     * @param advertType 广告信息类型
     * @return 广告信息类型集合
     */
    public List<AdvertType> selectAdvertTypeList(AdvertType advertType);

    /**
     * 新增广告信息类型
     * 
     * @param advertType 广告信息类型
     * @return 结果
     */
    public int insertAdvertType(AdvertType advertType);

    /**
     * 修改广告信息类型
     * 
     * @param advertType 广告信息类型
     * @return 结果
     */
    public int updateAdvertType(AdvertType advertType);

    /**
     * 删除广告信息类型
     * 
     * @param advertTypeId 广告信息类型主键
     * @return 结果
     */
    public int deleteAdvertTypeByAdvertTypeId(Long advertTypeId);

    /**
     * 批量删除广告信息类型
     * 
     * @param advertTypeIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteAdvertTypeByAdvertTypeIds(Long[] advertTypeIds);

    /**
     * 批量删除广告位置#advert_position
     * 
     * @param advertTypeIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteAdvertPositionByAdvertTypeIds(Long[] advertTypeIds);
    
    /**
     * 批量新增广告位置#advert_position
     * 
     * @param advertPositionList 广告位置#advert_position列表
     * @return 结果
     */
    public int batchAdvertPosition(List<AdvertPosition> advertPositionList);
    

    /**
     * 通过广告信息类型主键删除广告位置#advert_position信息
     * 
     * @param advertTypeId 广告信息类型ID
     * @return 结果
     */
    public int deleteAdvertPositionByAdvertTypeId(Long advertTypeId);
}
